Media streaming applications that stream media data from a wireless communication device over a wireless network can suffer from stall conditions in which media packets become stalled in a baseband queue and cannot be transmitted from the wireless communication device. Stall conditions can result from a number of causes, including, for example, degrading channel conditions. As another example, in some instances, a stall condition can result from a transmitter having an insufficient transfer allowance, which prevents the transmitter from sending out data.
Stall conditions can occur rather frequently and, in some instances, can be quite lengthy. In the case of stall conditions having a relatively long duration, media packets queued for transmission in a streaming media session can be blocked in the baseband queue for an extended period of time. By the time the wireless network interface recovers from the stall, media packets released from the baseband queue and sent by the device can be old and of little use to the receiving end of the connection. As such, transmission of the old media packets can waste wireless bandwidth and require unnecessary processing/filtering overhead at the receiving end. Further, a device receiving old media packets can treat the late arrival of old packets following a stall as high end-to-end delay, or Round Trip Time (RTT), for the streaming media session even though the stall condition has already passed. If the receiving device treats the late arrival of old packets as high end-to-end delay for the streaming media session, rate control mechanisms can be triggered which can lead to a rapid ramp down and slow ramp up of the streaming rate. Since the stall condition has already passed at this point, implementation of the rate control mechanism can needlessly slow the steaming rate, thus negatively impacting user experience.